package com.muyu.danmo.domain;


import com.muyu.common.core.annotation.Excel;
import com.muyu.common.core.web.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 地区对象 danmo_information_regions
 * 
 * @author yangle
 * @date 2024-11-13
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class DanmoInformationRegions extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 地区的唯一标识符（主键）。 */
    private Long regionId;

    /** 地区的名称。 */
    @Excel(name = "地区的名称。")
    private String name;

    /** 地区的类型（国家、省、市、区）。 */
    @Excel(name = "地区的类型", readConverterExp = "国=家、省、市、区")
    private String type;

    /** 父级地区ID，外键关联到本表，用于构建层级结构。 */
    @Excel(name = "父级地区ID，外键关联到本表，用于构建层级结构。")
    private Long parentRegionId;

    /** 省份 */
    @Excel(name = "省份")
    private String province;

    /** 市 */
    @Excel(name = "市")
    private String citycode;

    /** 县 */
    @Excel(name = "县")
    private String countycode;



    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("regionId", getRegionId())
            .append("name", getName())
            .append("type", getType())
            .append("parentRegionId", getParentRegionId())
            .append("province", getProvince())
            .append("citycode", getCitycode())
            .append("countycode", getCountycode())
            .toString();
    }
}
